#pragma once

#include <typedef.h>

#if defined(CONFIG_TAR4ESP32)
#include "driver/gpio.h"
#endif

typedef enum
{
	E_GPIO_INPUT = 0,
	E_GPIO_OUTPUT,
} E_GPIO_MODE;

class GPIO
{
public:
	GPIO(int mode, uint64_t pinset);
	virtual ~GPIO();
	int GetValue(int gpioPin);
	void SetValue(int gpioPin, int value);

private:
#if defined(CONFIG_TAR4ESP32)
	gpio_config_t io_conf;
#endif
};